package com.deductive.domain.special;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;


@ApiModel(value = "SpecialData", description = "专题数据统计")
@TableName(value = "special_data")
@Data
public class SpecialData implements Serializable {
    /**
     *
     */
    @ApiModelProperty(value = "主键ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 表名
     */
    @ApiModelProperty(value = "表名")
    @TableField(value = "table_name")
    private String tableName;

    /**
     * 数据量
     */
    @ApiModelProperty(value = "数据量")
    @TableField(value = "count")
    private Long count;

    /**
     * 图标
     */
    @ApiModelProperty(value = "图标")
    @TableField(value = "icon")
    private String icon;

    /**
     * 数据类型
     */
    @ApiModelProperty(value = "数据类型")
    @TableField(value = "data_type")
    private String dataType;

    /**
     * 发布地址
     */
    @ApiModelProperty(value = "发布地址")
    @TableField(value = "geoserver_url")
    private String geoserverUrl;

    /**
     * 坐标系编码
     */
    @ApiModelProperty(value = "坐标系编码(EPSG)")
    @TableField(value = "epsg")
    private String epsg;

    /**
     * 是否挂接到目录树
     */
    @ApiModelProperty(value = "是否挂接到目录树", example = "1")
    @TableField(value = "is_tree")
    private Integer isTree;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", example = "2025-01-01 12:00:00")
    @TableField(value = "create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @ApiModelProperty(value = "状态")
    @TableField(value = "status")
    private Long status;

    /**
     * 用户Id
     */
    @ApiModelProperty(value = "用户ID")
    @TableField(value = "user_id")
    private Long userId;

    /**
     * 部门Id
     */
    @ApiModelProperty(value = "部门ID")
    @TableField(value = "dept_id")
    private Long deptId;


    @TableField(exist = false)
    private Integer parentId;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;


}